v1.11.0
Release Date
July 27, 2026
ROCK v1.11 expands sandbox runtime choices, introduces configurable lifecycle automation and a unified job workflow, and improves sandbox observability and Admin reliability. It also adds asynchronous image commits, persistent OpenSandbox sessions, and Windows filesystem support in the Python SDK.
Highlights
-
Configurable lifecycle automation: Persist deadlines for automatic stop, archive, and delete transitions. Status responses expose
auto_stop_time,auto_archive_time, andauto_delete_time; cluster policy can cap per-sandbox delays and configure archived-sandbox retention (#1264). -
OpenSandbox backend: Add an
opensandboxOperator backend and route command execution, file operations, status queries, HTTP/WebSocket services, and persistent shell sessions through the official OpenSandbox SDK. Session mappings are stored in Redis so they remain consistent across Admin workers (#1203, #1233, #1262). -
Unified job workflow: Extend
rock job runto support one task, multiple tasks, or an entire dataset. Add persisted run/job metadata, concurrent execution, resumable runs, OSS-backedJobViewer, and run-aware query commands (#1235). -
Asynchronous sandbox image commits: Proxy-mode image commit and push now run asynchronously through Rocklet. The Python and TypeScript SDKs can poll commit progress, while the legacy Admin API remains synchronous (#1280).
-
Windows filesystem support: Select a Windows-specific filesystem client for Windows sandbox images, including ownership and permission handling, directory upload, binary-safe download, and PowerShell output handling (#1297).
Sandbox and Admin
New Features
-
Default new sandbox requests to a
50Gdisk quota; callers can explicitly useNoneto fall back to the cluster default (#1226). -
Return
num_gpusandaccelerator_typein sandbox status responses through direct, proxy, and OpenSandbox paths (#1286). -
Allow
runtime.max_allowed_specto be updated dynamically from Nacos while preserving unspecified YAML values (#1291). -
Add scheduler health, registration, worker-cache, task-run, duration, and failure metrics for automatic tasks (#1254).
-
Add configurable exception traceback logging for Admin and other ROCK processes (#1261).
-
Add proactive Ray client health checks and serialized reconnection when the current client session is closed or unresponsive (#1256).
-
Use per-worker
SO_REUSEPORTlisteners to improve multi-worker Admin startup (#1267).
Bug Fixes
-
Preserve cached phases while a sandbox remains
pending, and preventpending → runninguntil the runtime reports the sandbox as alive (#1239, #1247). -
Populate the effective disk value in sandbox start responses (#1258).
-
Tolerate partial Docker inspect failures when collecting sandbox status (#1282).
-
Immediately expire failed Ray submissions, clean up timed-out scheduling, and terminate the actor if metadata retrieval fails (#1284, #1288).
-
Refresh
start_timeafter restarting a stopped sandbox (#1289). -
Improve deleted-sandbox handling by archiving remaining logs, releasing resource reservations, making Ray deletion idempotent, and returning
delete_timein status responses (#1295).
Kubernetes
New Features
-
Add Nacos-driven
template_rulesselection. Rules are evaluated in declaration order and can match image patterns, image OS, GPU-count ranges, and accelerator types; an explicit template inextended_paramsremains highest priority (#1274). -
Transport encrypted image-registry credentials to Kubernetes sandbox workloads (#1130).
SDK and CLI
New Features
-
TypeScript SDK: Add
Sandbox.archive(), disk configuration, typed lifecycle states, state-transition history, and disk fields in status responses (#1241). -
Python and TypeScript SDKs: Allow verifier environment variables through
VerifierConfig.env(#1220).
Bug Fixes
- TypeScript SDK: Correct nohup process-completion detection, run long OSS
operations in nohup mode, verify transfer size, and fix first-time
ossutilinstallation (#1224).
Upgrade Notes
-
Database schema: Lifecycle automation adds
sandbox_record.auto_transition_state,sandbox_record.auto_transition_time, and theix_sandbox_record_state_auto_transitionindex. Apply the corresponding schema update before enabling automatic transitions. -
AES key configuration:
aes_encrypt_keyis now loaded exclusively from the top level of the static ROCK YAML configuration. It is no longer read from Nacos orproxy_service.aes_encrypt_key(#1268). -
Lifecycle configuration: Remove the obsolete
lifecycle.auto_transition.auto_archive_secondscluster setting before upgrading. Per-sandboxauto_archive_secondscontrols archive timing; clusterauto_delete_secondsacts as a default, delay cap, and cleanup grace period, whileauto_delete_archived_secondscontrols archive retention (#1264). -
Kubernetes template selection: Migrate deployments that rely on
k8s.template_mapor implicit GPU template names to Nacostemplate_rules. Without an explicit template or matching rule, ROCK uses thedefaulttemplate (#1274).
Full comparison: v1.10.0...master